Skip to content

Take the page's scan result from frame 0 only - #35

Merged
FunctionFreak merged 1 commit into
mainfrom
agent_folder_names
Oct 24, 2026
Merged

FunctionFreak merged 1 commit into
mainfrom
agent_folder_names

Conversation

@FunctionFreak

Copy link
Copy Markdown
Contributor

A frame of another origin learns its path from the frame that read the document it sits in, over postMessage, and the page's own scripts can see and answer that message too. A page lying to one of its frames could hand it the path "0", and the worker took the page's result by that path alone, last writer winning, so that frame's records would have replaced the whole page in the scan. The page's result now comes only from frame 0, an id Chrome sets. Any other made-up path was never used: frames are taken from the kids list of the frame that read them. The fallback reader for pages the extension cannot script already returns the page as frame 0.

A frame of another origin learns its path from the frame that read the
document it sits in, over postMessage, and the page's own scripts can see
and answer that message too. A page lying to one of its frames could hand
it the path "0", and the worker took the page's result by that path alone,
last writer winning, so that frame's records would have replaced the whole
page in the scan. The page's result now comes only from frame 0, an id
Chrome sets. Any other made-up path was never used: frames are taken from
the kids list of the frame that read them. The fallback reader for pages
the extension cannot script already returns the page as frame 0.
@FunctionFreak
FunctionFreak merged commit f06bef2 into main Oct 24, 2026
4 checks passed
@FunctionFreak
FunctionFreak deleted the agent_folder_names branch October 24, 2026 22:15
FunctionFreak added a commit that referenced this pull request Nov 5, 2026
New AutoCua/utils/errors.py, error_text(e): the message an exception
carries (its args; strerror and filename for OS errors; timeout or exit
status for subprocess errors), built from the exception's fields and
never from str(e) or a traceback. The sixteen JSON replies in the app's
Flask routes, the iOS and Android connectors and the three Telegram views
use it in place of str(e). What the person sees stays the same, minus the
"[Errno N]" prefix. Closes the fourteen open py/stack-trace-exposure
alerts (#5, #8-#15, #27, #30-#32, #35), which treat str(e) of a caught
exception as stack-trace text once it reaches a reply.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant